/*
 * @Author: 啊彪
 * @Date: 2021-04-14 10:06:00
 * @LastEditors: 啊彪
 * @LastEditTime: 2022-01-05 14:04:33
 * @Description: 物品
 * @FilePath: \fkxzg\src\controller\item.controller.ts
 */

import abiao_utils from "abiao_utils";
import { FUNC_NAME, HANDLE_TYPE, PROP_NAME } from "../enum/itemLogs.enum";
import ItemLogs from "../models/log/itemlgos.model";
import User from "../models/user/user.model";
import utils from "../utils/utils";

export default class item {

    /**
     * 物品日志
     * @param roleId 角色ID
     * @param type 操作类型   收入 支出 系统 修改
     * @param itemName 物品名称
     * @param number 数量
     * @param desc 描述
     * @param beforeNumber 修改前数量
     * @param afterNumber 修改后数量
     * @param func 功能
     */
    static async itemLogs(roleId: number, type: HANDLE_TYPE, itemName: PROP_NAME | string, number: number, desc: string, beforeNumber: number | string, afterNumber: number | string, func: FUNC_NAME) {
        let userInfo: any = await User.findOne({ roleId });
        if (!userInfo) return

        let info = {
            roleId,
            nickName: userInfo.nickName,
            serverId: userInfo.serverId,
            type,
            itemName,
            number,
            desc,
            func,
            beforeNumber,
            afterNumber,
            createTime: abiao_utils.date()
        }
        await ItemLogs.create(info);
    }
}
